home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / boot / diskBoot.OpenProm / RCS / Makefile.proto,v < prev    next >
Makefile  |  1989-06-08  |  5KB  |  326 lines

  1. head     1.7;
  2. branch   ;
  3. access   ;
  4. symbols  ;
  5. locks    ; strict;
  6. comment  @@;
  7.  
  8.  
  9. 1.7
  10. date     89.01.06.08.10.24;  author brent;  state Exp;
  11. branches ;
  12. next     1.6;
  13.  
  14. 1.6
  15. date     86.07.23.13.31.47;  author brent;  state Exp;
  16. branches ;
  17. next     1.5;
  18.  
  19. 1.5
  20. date     86.07.22.09.51.45;  author brent;  state Exp;
  21. branches ;
  22. next     1.4;
  23.  
  24. 1.4
  25. date     86.07.21.09.30.48;  author brent;  state Exp;
  26. branches ;
  27. next     1.3;
  28.  
  29. 1.3
  30. date     86.07.17.09.09.30;  author brent;  state Exp;
  31. branches ;
  32. next     1.2;
  33.  
  34. 1.2
  35. date     86.07.16.17.01.59;  author brent;  state Exp;
  36. branches ;
  37. next     1.1;
  38.  
  39. 1.1
  40. date     86.07.16.13.03.33;  author brent;  state Exp;
  41. branches ;
  42. next     ;
  43.  
  44.  
  45. desc
  46. @Prototypical makefile for boot programs
  47. @
  48.  
  49.  
  50. 1.7
  51. log
  52. @Updated to new mkmf structure and new directory structure
  53. @
  54. text
  55. @#
  56. # makefile for the sprite version of a Unix boot program.
  57. # The boot program gets loaded by the PROM and its job is
  58. # to read enough of the directory structure to open the
  59. # specified kernel (or diagnostic) image, read it into
  60. # memory, and transfer execution to it.
  61. #
  62. # Allow mkmf
  63.  
  64. SPRITEHOME = /sprite/users/sprite
  65.  
  66. TM ?= @@(DEFTARGET)
  67.  
  68. ROOT = /sprite
  69. KERNEL_INCLUDE = ${ROOT}/src/kernel/Include
  70. USER_INCLUDE = ${ROOT}/lib/include
  71.  
  72. #
  73. # Use .PATH.h to set the .INCLUDES variable
  74. .PATH.h        :
  75. .PATH.h        : $(TM).md $(KERNEL_INCLUDE) $(USER_INCLUDE) \
  76.             $(KERNEL_INCLUDE)/$(TM).md
  77.  
  78. DFLAGS = -Dlint -DNO_PRINTF -DKERNEL -D$(TM)
  79. IFLAGS = -I. ${.INCLUDES}
  80. CFLAGS = -O ${IFLAGS} ${DFLAGS}
  81. PPFLAGS = ${IFLAGS} ${DFLAGS}
  82. LINTFLAGS = ${IFLAGS}
  83. LINTLIBS =
  84.  
  85. LIBS = /sprite/lib/libc.a
  86.  
  87. CC = /bin/cc -m68010
  88. AS = /bin/as -m68010
  89. MV = /sprite/cmds/mv
  90. SED = /sprite/cmds/sed
  91. LD = /bin/ld
  92. TOUCH = /bin/touch
  93. MAKEDEPEND = /sprite/cmds/makedepend
  94.  
  95. UPDATE = /usr/local/update
  96. DEPEND = ${SPRITEHOME}/bin/depend.csh
  97. DEPENDSCRIPT = ${SPRITEHOME}/lib/ex.depend
  98. MKVERSION = ${SPRITEHOME}/bin/mkversion
  99.  
  100. # TEXT_START is where the boot program is linked to run at.  This needs to
  101. # be large enough so that the kernel can be loaded before it.  If it is
  102. # too big then the monitor may not have mapped that memory for us.
  103. # b0000 is 3/4 a meg
  104. TEXT_START = b0000
  105.  
  106. SRCS =            @@(SRCS)
  107.  
  108. HDRS =            @@(HDRS)
  109.  
  110. BOOTPROGS =         @@(PROGRAM)
  111.  
  112. SPECIAL = start.o
  113.  
  114. OBJS =             @@(OBJS)
  115.  
  116. ENDOBJ = end.o
  117.  
  118. .c.o:
  119.     @@rm -f $*.o
  120.     ${CC} ${CFLAGS} -c $*.c
  121.     @@size $*.o
  122.  
  123. .s.o:
  124.     @@rm -f $*.o
  125.     /lib/cpp ${PPFLAGS} $*.s > $*.pp
  126.     ${AS} -o $*.o $*.pp
  127.     @@rm -f $*.pp
  128.  
  129. all: ${BOOTPROGS}
  130.  
  131. scsiDiskBoot: ${SPECIAL} ${OBJS} ${ENDOBJ}
  132.     ${LD} -N -e start -T ${TEXT_START} -o $@@  ${SPECIAL} ${OBJS} ${LIBS} ${ENDOBJ}
  133.     cp $@@ $@@.adb
  134.     strip $@@
  135.     @@size $@@
  136.     @@ls -l $@@
  137.  
  138.  
  139. tags: ${HDRS} ${SRCS}
  140.     rm -f tags
  141.     ctags -t ${HDRS} ${SRCS}
  142.  
  143. lint:   ${SRCS} ${HDRS} ${LINTLIBS}
  144.     rm -f lint
  145.     lint ${LINTFLAGS} ${SRCS} ${LINTLIBS} > lint
  146.  
  147. install: ${BOOTPROGS}
  148.     rdist -c -w ${BOOTPROGS} lust:/usr/sprite/boot
  149.  
  150. #
  151. # MAKEDEPEND usage:
  152. #    <dependency-file> : <sources> MAKEDEPEND
  153. #
  154. # Generate dependency file suitable for inclusion in future makes.  Must
  155. # mung the dependency file in two ways:  a) add a .md prefix on all the .o
  156. # file names;  b) for each entry for a .o file, generate an equivalent
  157. # entry for a .po file.
  158.  
  159. MAKEDEPEND    : .USE
  160.     @@$(TOUCH) $(DEPFILE)
  161.     $(MAKEDEPEND) $(CFLAGS:M-[ID]*) -w50 -f $(DEPFILE) $(.ALLSRC)
  162.     @@$(MV) -f $(DEPFILE) $(DEPFILE).tmp
  163.     @@$(SED) -e '/^#/!s|^\([^:]*\)\.o[     ]*:|$(TM).md/\1.po $(TM).md/&|' <$(DEPFILE).tmp > $(DEPFILE)
  164.     @@$(RM) -f $(DEPFILE).tmp
  165.  
  166. DEPFILE = dependencies.mk
  167.  
  168. depend            : $(DEPFILE)
  169. $(DEPFILE)        ! $(SRCS:M*.c) $(SRCS:M*.s) MAKEDEPEND
  170.  
  171. #if exists($(DEPFILE))
  172. #include    "$(DEPFILE)"
  173. #endif
  174. @
  175.  
  176.  
  177. 1.6
  178. log
  179. @silenced some output
  180. @
  181. text
  182. @d8 1
  183. d12 2
  184. d18 8
  185. a25 2
  186. DFLAGS = -Dlint -DNO_PRINTF
  187. IFLAGS = -I. -I${KERNEL_INCLUDE} -I${USER_INCLUDE}
  188. d29 1
  189. d31 1
  190. a31 1
  191. LIBS = /sprite/lib/crt.a
  192. d35 2
  193. d38 2
  194. d49 2
  195. a50 2
  196. # 80000 is half a meg
  197. TEXT_START = 80000
  198. d52 1
  199. a52 1
  200. ASMSRCS = xxx.s
  201. d54 1
  202. a54 1
  203. CSRCS = xxx.c
  204. d56 1
  205. a56 1
  206. HDRS = xxx.h
  207. a57 2
  208. BOOTPROGS = scsiDiskBoot
  209.  
  210. d60 1
  211. a60 1
  212. OBJS =  xxx.o
  213. d85 1
  214. a85 1
  215. tags: ${HDRS} ${CSRCS}
  216. d87 1
  217. a87 1
  218.     ctags -t ${HDRS} ${CSRCS}
  219. d89 1
  220. a89 1
  221. lint:   ${CSRCS} ${HDRS} ${LINTLIBS}
  222. d91 1
  223. a91 1
  224.     lint ${LINTFLAGS} ${CSRCS} ${LINTLIBS} > lint
  225. d96 8
  226. a103 3
  227. depend :
  228.     ex - Makefile < ${DEPENDSCRIPT}
  229.     ${DEPEND} ${IFLAGS} ${CSRCS} >> Makefile
  230. d105 6
  231. a110 2
  232. # below is automatically generated
  233. ###     don't delete this line, make depend looks for it
  234. d112 8
  235. @
  236.  
  237.  
  238. 1.5
  239. log
  240. @added size to .o make
  241. @
  242. text
  243. @d19 1
  244. d53 1
  245. a53 1
  246.     -rm -f $*.o
  247. d55 1
  248. a55 1
  249.     -size $*.o
  250. d58 1
  251. a58 1
  252.     -rm -f $*.o
  253. d61 1
  254. a61 1
  255.     -rm -f $*.pp
  256. d69 2
  257. a70 2
  258.     size $@@
  259.     ls -l $@@
  260. @
  261.  
  262.  
  263. 1.4
  264. log
  265. @*** empty log message ***
  266. @
  267. text
  268. @d52 1
  269. a52 1
  270.     rm -f $*.o
  271. d54 1
  272. d57 1
  273. a57 1
  274.     rm -f $*.o
  275. d60 1
  276. a60 1
  277.     rm -f $*.pp
  278. @
  279.  
  280.  
  281. 1.3
  282. log
  283. @added lib crt.a
  284. @
  285. text
  286. @d15 1
  287. d17 2
  288. a18 2
  289. CFLAGS = -O ${IFLAGS}
  290. PPFLAGS = ${IFLAGS}
  291. d20 1
  292. a20 1
  293. LIBS = /sprite/lib/libc.a /sprite/lib/crt.a
  294. d65 5
  295. @
  296.  
  297.  
  298. 1.2
  299. log
  300. @works fully to copying to lust:/usr/sprite/boot/*
  301. @
  302. text
  303. @d19 1
  304. a19 1
  305. LIBS = /sprite/lib/libc.a
  306. @
  307.  
  308.  
  309. 1.1
  310. log
  311. @Initial revision
  312. @
  313. text
  314. @d19 4
  315. a22 2
  316. CC = /bin/cc -M68010
  317. AS = /bin/as -M68010
  318. d63 1
  319. a63 1
  320.     ${LD} -N -e start -T ${TEXT_START} -o $@@  ${SPECIAL} ${OBJS} ${ENDOBJ}
  321. d73 3
  322. d78 1
  323. a78 1
  324.     ${DEPEND} ${IFLAGS} ${SRCS} >> Makefile
  325. @
  326.